#ifndef _GORBATRAS_FBXANIMATIONCURVE
#define _GORBATRAS_FBXANIMATIONCURVE

#include "Gorbatras_Library.h"

namespace GC
{
	

	class FbxAnimationCurve
	{
		public:
			FbxAnimationCurve( FbxAnimCurve* a_curve, const double a_deltaFrameTime  );
			//~FbxAnimationCurve();

			const bool IsValid() const;
			//operator bool() const;
			//Returns true if the std::map contains a_frameNumber key
			const bool HasValueAtFrame(const int a_frameNumber);
			//Get the value at a specific frame 
			//Because you can't validate if frame has value or not on that frame always use HasValueAtFrame() first
			const double GetValueAtFrame( const int a_frameNumber );
			//Returns 
			const int GetAnimationLength() const;
			//Function that returns an empty FbxAnimationCurve if a_curve is null
			//static FbxAnimationCurve* TryToCreate( FbxAnimCurve* a_curve, const double a_deltaFrameTime );
		private:
			//The amount of total frames
			int m_frameCount;
			//The framevalues at certain frames
			FbxAnimationCurveKey m_frameValues;			
	};
}

#endif